/*
 * > /*
>  * INSANE - Interactive Structural Analysis Environment
>  *
>  * Copyright (C) 2003-2004
>  * Universidade Federal de Minas Gerais
>  * Escola de Engenharia
>  * Departamento de Engenharia de Estruturas
>  *
>  * Author's email :     insane@dees.ufmg.br
>  * Author's Website :   http://www.dees.ufmg.br/insane
>  *
>  * This program is free software; you can redistribute it and/or
>  * modify it under the terms of the GNU General Public License
>  * as published by the Free Software Foundation; either version 2
>  * of the License, or any later version.
>  *
>  * This program is distributed in the hope that it will be useful,
>  * but WITHOUT ANY WARRANTY; without even the implied warranty of
>  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
>  * GNU General Public License for more details.
>  *
>  * You should have received a copy of the GNU General Public License
>  * along with this program; if not, write to the Free Software
>  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-
> 1307, USA.
 *
 */

package br.ufmg.dees.insane.ui.rich.postp.postp_view;

import java.awt.Color;
import java.awt.Font;
import java.io.Serializable;

import br.ufmg.dees.insane.draw.MarkDraw;

/**
 * A class representing the state of the model.
 * @author	Penna, Samuel & Pitangueira, Roque
 * @see     xyplot_view.DesktopPostp
 * @see     xyplot_view.DrawingArea
 * @since   april 2005
 */
public class VertexViewState implements Serializable {

 	/**
	 * Comment for <code>serialVersionUID</code>
	 */
	private static final long serialVersionUID = 1L;
	
	private Color 	markColor 		= Color.RED;
	private Color 	markStateColor 		= Color.GRAY;
	private Color 	labelColor 		= Color.GREEN;
	private boolean isLabelOn 		= false;
	private boolean isCoordsOn 		= false;
	
	private boolean isRestraintsOnOff 		= false;
	private boolean isLoadOnOff 		= false;
	
	private boolean vertexOnOff	= true;
	
	private int 	textSize 	= 10;
	private String 	textFont 	= "Arial";
	private byte 	textStyle 	= Font.PLAIN;
	
	private int 	markSize 	= 2;
	private int 	markStateSize 	= 2;
	private byte 	markType 	= MarkDraw.POINT;
	
	private double  labelXCenter 	= 2.0;
	private double  labelYCenter 	= 2.0;
	private double  labelTextAngle 	= Math.PI/4;
	
	/**
     * The class constructor 
     */
    public VertexViewState() {
    }

	/**
	 * The method return the isCoordsOn.
	 * @return Returns The isCoordsOn.
	 */
	public boolean isCoordsOn() {
		return isCoordsOn;
	}

	/**
	 * The method set the field isCoordsOn from the parameter isCoordsOn.
	 * @param isCoordsOn The isCoordsOn to set.
	 */
	public void setCoordsOn(boolean isCoordsOn) {
		this.isCoordsOn = isCoordsOn;
	}

	/**
	 * The method return the isLabelOn.
	 * @return Returns The isLabelOn.
	 */
	public boolean isLabelOn() {
		return isLabelOn;
	}

	/**
	 * The method set the field isLabelOn from the parameter isLabelOn.
	 * @param isLabelOn The isLabelOn to set.
	 */
	public void setLabelOn(boolean isLabelOn) {
		this.isLabelOn = isLabelOn;
	}

	/**
	 * The method return the labelColor.
	 * @return Returns The labelColor.
	 */
	public Color getLabelColor() {
		return labelColor;
	}

	/**
	 * The method set the field labelColor from the parameter labelColor.
	 * @param labelColor The labelColor to set.
	 */
	public void setLabelColor(Color labelColor) {
		this.labelColor = labelColor;
	}

	/**
	 * The method return the labelTextAngle.
	 * @return Returns The labelTextAngle.
	 */
	public double getLabelTextAngle() {
		return labelTextAngle;
	}

	/**
	 * The method set the field labelTextAngle from the parameter labelTextAngle.
	 * @param labelTextAngle The labelTextAngle to set.
	 */
	public void setLabelTextAngle(double labelTextAngle) {
		this.labelTextAngle = labelTextAngle;
	}

	/**
	 * The method return the labelXCenter.
	 * @return Returns The labelXCenter.
	 */
	public double getLabelXCenter() {
		return labelXCenter;
	}

	/**
	 * The method set the field labelXCenter from the parameter labelXCenter.
	 * @param labelXCenter The labelXCenter to set.
	 */
	public void setLabelXCenter(double labelXCenter) {
		this.labelXCenter = labelXCenter;
	}

	/**
	 * The method return the labelYCenter.
	 * @return Returns The labelYCenter.
	 */
	public double getLabelYCenter() {
		return labelYCenter;
	}

	/**
	 * The method set the field labelYCenter from the parameter labelYCenter.
	 * @param labelYCenter The labelYCenter to set.
	 */
	public void setLabelYCenter(double labelYCenter) {
		this.labelYCenter = labelYCenter;
	}

	/**
	 * The method return the markColor.
	 * @return Returns The markColor.
	 */
	public Color getMarkColor() {
		return markColor;
	}

	/**
	 * The method set the field markColor from the parameter markColor.
	 * @param markColor The markColor to set.
	 */
	public void setMarkColor(Color markColor) {
		this.markColor = markColor;
	}

	/**
	 * The method return the markSize.
	 * @return Returns The markSize.
	 */
	public int getMarkSize() {
		return markSize;
	}

	/**
	 * The method set the field markSize from the parameter markSize.
	 * @param markSize The markSize to set.
	 */
	public void setMarkSize(int markSize) {
		this.markSize = markSize;
	}

	/**
	 * The method return the markType.
	 * @return Returns The markType.
	 */
	public byte getMarkType() {
		return markType;
	}

	/**
	 * The method set the field markType from the parameter markType.
	 * @param markType The markType to set.
	 */
	public void setMarkType(byte markType) {
		this.markType = markType;
	}

	/**
	 * The method return the textFont.
	 * @return Returns The textFont.
	 */
	public String getTextFont() {
		return textFont;
	}

	/**
	 * The method set the field textFont from the parameter textFont.
	 * @param textFont The textFont to set.
	 */
	public void setTextFont(String textFont) {
		this.textFont = textFont;
	}

	/**
	 * The method return the textSize.
	 * @return Returns The textSize.
	 */
	public int getTextSize() {
		return textSize;
	}

	/**
	 * The method set the field textSize from the parameter textSize.
	 * @param textSize The textSize to set.
	 */
	public void setTextSize(int textSize) {
		this.textSize = textSize;
	}

	/**
	 * The method return the textStyle.
	 * @return Returns The textStyle.
	 */
	public byte getTextStyle() {
		return textStyle;
	}

	/**
	 * The method set the field textStyle from the parameter textStyle.
	 * @param textStyle The textStyle to set.
	 */
	public void setTextStyle(byte textStyle) {
		this.textStyle = textStyle;
	}

	public boolean isVertexOnOff() {
		return vertexOnOff;
	}

	public void setVertexOnOff(boolean vertexOnOff) {
		this.vertexOnOff = vertexOnOff;
	}

	public boolean isRestraintsOnOff() {
		return isRestraintsOnOff;
	}

	public void setRestraintsOnOff(boolean isRestraintsOnOff) {
		this.isRestraintsOnOff = isRestraintsOnOff;
	}

	public boolean isLoadOnOff() {
		return isLoadOnOff;
	}

	public void setLoadOnOff(boolean isLoadOnOff) {
		this.isLoadOnOff = isLoadOnOff;
	}

	public int getMarkStateSize() {
		return markStateSize;
	}

	public void setMarkStateSize(int markStateSize) {
		this.markStateSize = markStateSize;
	}

	public Color getMarkStateColor() {
		return markStateColor;
	}

	public void setMarkStateColor(Color markStateColor) {
		this.markStateColor = markStateColor;
	}

//***********************************************************************    
}